1. Technical Field
The technology presented herein relates to a computer readable storage medium having a game program stored thereon for moving an object in a virtual space, and a game apparatus for such a game program; and more specifically to a computer readable storage medium having a game program stored thereon for moving a predetermined object based on posture/motion information obtained from predetermined detection means for detecting a posture or a motion of an input device operated by a user, and a game apparatus for such a game program.
Conventionally, as a so-called golf game, a golf game which is enjoyed by a player by swinging up and down a wireless controller to operate a golf club (to make a golf swing) in a virtual game space (for example, the users manual of “WE LOVE GOLF!”, CAPCOM Co., Ltd., pp. 6-7, 16-17 and 22-23). In this golf game, an operation for making a swing is performed as follows. First, a gauge as shown in FIG. 58 is displayed on the screen. In the gauge, a remote control cursor 901, a club head cursor 902, and an impact zone 903 are displayed. The player swings up a controller while pressing an A button of the controller. Then, in association with this motion, the remote control cursor 901 moves along the gauge (moves rightward in FIG. 58). In accordance with this, the club head cursor 902 moves as following the remote control cursor 901. The club head cursor 902, when catching up with the remote control cursor 901, is inverted to return to the original position thereof. When the club head cursor 902 reaches back to the impact zone 903, the player swings down the controller. Thus, a shot motion of golf can be made. In addition, when the player makes the shot motion while pressing a predetermined button (button 1 or button 2 in the above-mentioned game), a topspin or a backspin can be applied to the struck ball.
However, the above-described game has the following problems. In the above-described golf game, the golf club in the virtual game space can be moved in association with the motion of the player of swinging up and down the controller. On this point, the player can virtually experience an actual golf swing. However, for making a change on the movement of the golf ball, for example, for applying a backspin or the like to the golf ball, an operation of pressing a predetermined button is required, which is different from the motion in the actual golf game. Therefore, the effect of virtually providing an experience of an actual golf game is reduced.
Therefore, a feature of an example embodiment presented herein is to provide a computer readable storage medium having a game program stored thereon which provides a player with a higher level of reality for the operation that he/she makes.
The present embodiment has the following features to attain the above. The reference numerals, additional descriptions and the like in parentheses in this section of the specification indicate an example of the correspondence with the embodiments described later for easier understanding, and do not limit the present embodiment in any way.
A first aspect of the present embodiment is directed to a computer readable storage medium having stored thereon a game program to be executed by a computer of a game apparatus, the game program being for moving an object in a virtual space based on posture/motion information obtained from predetermined detection means for detecting a posture or a motion of an input device operated by a user. The game program causes the computer to function as posture/motion information obtaining means (S2), power value calculation means (S53), braking value calculation means (S171) and object moving means (S124, S163). The posture/motion information obtaining means repeatedly obtains posture/motion information detected by the detection means. The power value calculation means calculates power value data, which is a parameter representing a power to be given to the object, based on the posture/motion information. The braking value calculation means calculates braking value data representing a braking power applied on the input device, based on the posture/motion information. The object moving means moves the object based on the power value data and the braking value data.
According to the first aspect, the braking power generated by the operation of the player can be reflected on the motion of the object. Therefore, it is made possible to provide the player with a higher level of reality for the operation that he/she makes.
In a second aspect, the detection means is a motion sensor included in the input device.
According to the second aspect, the posture of the input device can be calculated more accurately.
In a second aspect, the game program causes the computer to further function as maximum braking value detection means for detecting a maximum braking value, which is a maximum value among the braking values calculated by the braking value calculation means. The object moving means moves the object based on the maximum braking value.
According to the third aspect, it is made possible to allow the player to feel natural while playing, which makes the game more entertaining.
In a fourth aspect, the object moving means moves the object based on the power value until the maximum braking power is detected by the maximum braking power detection means, and moves the object based on the power value and the maximum braking power after the maximum braking power is detected by the maximum braking power detection means.
According to the fourth aspect, an influence based on the maximum braking value can be applied on the object after the object starts moving.
In a fifth aspect, the game program causes the computer to further function as posture calculation means for calculating a posture of the input device based on the posture/motion information. The power value calculation means calculates the power value based on the posture of the input device calculated by the posture calculation means.
According to the fifth aspect, the processing which reflects the operation made by the player can be executed more accurately.
In a sixth aspect, the braking value calculation means includes correction coefficient calculation means (S101) and braking value correction means (S102, S103). The correction coefficient calculation means calculates a correction coefficient for correcting the braking value to be smaller as a difference between the posture of the input device obtained when the object moving means starts moving the object and a current posture of the input device is larger. The braking value correction means corrects the braking value using the correction coefficient calculated by the correction coefficient calculation means.
According to the sixth aspect, it is made possible to provide the player with a higher level of reality for the operation that he/she makes. This makes the game more entertaining.
In a seventh aspect, the braking value calculation means calculates, as the braking value, a virtual bending angle caused to the input device in accordance with a change of the posture of the input device where the input device is regarded as a predetermined elastic body.
According to the seventh aspect, the processing can be executed with an assumption that a bend is generated. This can provide a game which allows the player to feel a higher level of reality for the operation that he/she makes.
In an eighth aspect, the object moving means moves the object based on the power value data and the braking value data when the posture of the input device fulfills a predetermined condition.
In a ninth aspect, the posture calculation means includes bend calculation means for calculating a virtual bend caused to the input device in accordance with a change of the posture of the input device where the input device is regarded as a predetermined elastic body; and posture correction means for correcting the posture of the input device based on the virtual bend calculated by the bend calculation means. The object moving means moves the object based on the power value data and the braking value data when the posture of the input device corrected by the posture correction means fulfills a predetermined condition.
In a tenth aspect, the game program causes the computer to further function as reference plane setting means for virtually setting a predetermined plane in an actual space as a reference plane at a predetermined timing based on the posture/motion information. The object moving means moves the object based on the power value data and the braking value data when the posture of the input device corrected by the posture correction means obtains a predetermined relationship with respect to the reference plane.
According to the eighth through tenth aspects, it is made possible to provide a game which allows the player to feel a higher level of reality for the operation that he/she makes.
In an eleventh aspect, the motion sensor is an angular velocity sensor. The posture/motion information obtaining means obtains angular velocity information detected by the angular velocity sensor as the posture/motion information.
In a twelfth aspect, the braking value calculation means calculates a change amount of the angular velocity at a predetermined time interval as the braking power.
According to the eleventh and twelfth aspects, the braking value can be calculated with simple processing which uses a change of the angular velocity and does not increase the processing load.
In a thirteenth aspect, the motion sensor is an acceleration sensor. The posture/motion information obtaining means obtains acceleration information detected by the acceleration sensor as the posture/motion information.
In a fourteenth aspect, the braking value calculation means calculates an acceleration at a predetermined time as the braking power.
According to the thirteenth and fourteenth aspects, the braking value can be calculated with simple processing which uses a change of the acceleration and does not increase the processing load.
In a fifteenth aspect, the game program is a golf game program which regards the input device as a golf club present in the virtual space and regards the object as a golf ball. The object moving means gives the power based on the power value data to the golf ball to move the golf ball, and also gives a backspin change based on the braking value data to the golf ball.
In a sixteenth aspect, the object moving means includes contact determination means (S111) for determining whether or not the golf club has contacted the golf ball in the virtual space; and moves the golf ball based on the power value data and the braking value data when the contact determination means determines that the golf club has contacted the golf ball.
According to the fifteenth and sixteenth aspects, in a golf game, a backspin can be applied on the struck ball with the player perceiving stronger that he/she is actually playing golf. This makes the golf game more entertaining.
In a seventeenth aspect, the contact determination means includes position correction means (S 112) for correcting a position of the golf club based on the braking value data; and determines whether or not the golf club has contacted the golf ball using the position of the golf club corrected by the position correction means.
According to the seventeenth aspect, it can be determined whether or not the golf club has contacted the golf ball in consideration of, for example, the bend of the head of the golf club in a direction in which the golf ball is to be hit. This makes the game more entertaining.
An eighteenth aspect of the present embodiment is directed to a game apparatus for moving an object in a virtual space based on posture/motion information obtained from predetermined detection means for detecting a posture or a motion of an input device operated by a user. The game apparatus comprises posture/motion information obtaining means (10), power value calculation means (10), braking value calculation means (10) and object moving means (10). The posture/motion information obtaining means repeatedly obtains posture/motion information detected by the detection means. The power value calculation means calculates power value data, which is a parameter representing a power to be given to the object, based on the posture/motion information. The braking value calculation means calculates braking value data representing a braking power applied on the input device, based on the posture/motion information. The object moving means moves the object based on the power value data and the braking value data.
According to the eighteenth aspect, the same effect as that provided by the first aspect can be provided.
According to the present embodiment, it is made possible to provide a game which allows the player to feel a higher level of reality.
These and other features, aspects and effects of the present embodiment will become more apparent from the following detailed description of the present embodiment when taken in conjunction with the accompanying drawings.